package util;

/**
 * - 负责人：浅学
 * 多媒体工具类
 */
import javax.sound.sampled.*;
import java.io.File;
import java.io.IOException;

public class MultimediaIO {
    private static Clip clip;
    public static boolean isPlaying;
    public static void playAudio(String audioFilePath) {
        try {
            File musicFile = new File(audioFilePath);
            AudioInputStream audioStream = AudioSystem.getAudioInputStream(musicFile);
            clip = AudioSystem.getClip();
            clip.open(audioStream);
            clip.start();
            isPlaying = true;

        } catch (IOException | UnsupportedOperationException | UnsupportedAudioFileException | LineUnavailableException e) {
            e.printStackTrace();
        }
    }
    /**
        toggleAudio的静态方法，用于控制音频的播放和暂停。
        使用一个boolean类型的变量isPlaying来跟踪音频是否正在播放。
        在playAudio方法中，设置isPlaying为true，表示音频正在播放
        如果音频正在播放，调用clip.stop()来停止音频播放，并将isPlaying设置为false；
        如果音频没有播放，调用clip.start()来启动音频播放，并将isPlaying设置为true。
     */
    public static void toggleAudio() {
        if (isPlaying) {
            clip.stop();
            isPlaying = false;
        } else {
            clip.start();
            isPlaying = true;
        }
    }
}